//
// Typography
// --------------------------------------------------


// Body text
// -------------------------

p {
    margin: 0 0 $baseLineHeight / 2;
}
.lead {
    margin-bottom: $baseLineHeight;
    font-size: $baseFontSize * 1.5;
    font-weight: 200;
    line-height: $baseLineHeight * 1.5;
}


// Emphasis & misc
// -------------------------

small {
    font-size: 85%; // Ex: 14px base font * 85% = about 12px
}
strong {
    font-weight: bold;
}
em {
    font-style: italic;
}
cite {
    font-style: normal;
}

// Utility classes
.muted {
    color: $grayLight;
}
.text-warning {
    color: $warningText;
}
.text-error {
    color: $errorText;
}
.text-info {
    color: $infoText;
}
.text-success {
    color: $successText;
}


// Headings
// -------------------------

h1, h2, h3, h4, h5, h6 {
    margin: ($baseLineHeight / 2) 0;
    font-family: $headingsFontFamily;
    font-weight: $headingsFontWeight;
    line-height: 1;
    color: $headingsColor;
    text-rendering: optimizelegibility; // Fix the character spacing for headings
    small {
        font-weight: normal;
        line-height: 1;
        color: $grayLight;
    }
}
h1 { font-size: 36px; line-height: 40px; }
h2 { font-size: 30px; line-height: 40px; }
h3 { font-size: 24px; line-height: 40px; }
h4 { font-size: 18px; line-height: 20px; }
h5 { font-size: 14px; line-height: 20px; }
h6 { font-size: 12px; line-height: 20px; }

h1 small { font-size: 24px; }
h2 small { font-size: 18px; }
h3 small { font-size: 14px; }
h4 small { font-size: 14px; }


// Page header
// -------------------------

.page-header {
    padding-bottom: ($baseLineHeight / 2) - 1;
    margin: $baseLineHeight 0 ($baseLineHeight * 1.5);
    border-bottom: 1px solid $grayLighter;
}



// Lists
// --------------------------------------------------

// Unordered and Ordered lists
ul, ol {
    padding: 0;
    margin: 0 0 $baseLineHeight / 2 0px;
}
ul ul,
ul ol,
ol ol,
ol ul {
    margin-bottom: 0;
}
li {
    line-height: $baseLineHeight;
}
ul.unstyled,
ol.unstyled {
    margin-left: 0;
    list-style: none;
}

// Description Lists
dl {
    margin-bottom: $baseLineHeight;
}
dt,
dd {
    line-height: $baseLineHeight;
}
dt {
    font-weight: bold;
}
dd {
    margin-left: $baseLineHeight / 2;
}
// Horizontal layout (like forms)
.dl-horizontal {
    //.clearfix(); // Ensure dl clears floats if empty dd elements present
    dt {
        float: left;
        width: $horizontalComponentOffset - 20;
        clear: left;
        text-align: right;
        //.text-overflow();
    }
    dd {
        margin-left: $horizontalComponentOffset;
    }
}

// MISC
// ----

// Horizontal rules
hr {
    margin: $baseLineHeight 0;
    border: 0;
    border-top: 1px solid $hrBorder;
    border-bottom: 1px solid $white;
}

// Abbreviations and acronyms
abbr[title] {
    cursor: help;
    border-bottom: 1px dotted $grayLight;
}
abbr.initialism {
    font-size: 90%;
    text-transform: uppercase;
}

// Blockquotes
blockquote {
    padding: 0 0 0 15px;
    margin: 0 0 $baseLineHeight;
    border-left: 5px solid $grayLighter;
    p {
        margin-bottom: 0;
        //#font > .shorthand(16px,300,$baseLineHeight * 1.25);
    }
    small {
        display: block;
        line-height: $baseLineHeight;
        color: $grayLight;
        &:before {
            content: '\2014 \00A0';
        }
    }

    // Float right with text-align: right
    &.pull-right {
        float: right;
        padding-right: 15px;
        padding-left: 0;
        border-right: 5px solid $grayLighter;
        border-left: 0;
        p,
        small {
            text-align: right;
        }
        small {
            &:before {
                content: '';
            }
            &:after {
                content: '\00A0 \2014';
            }
        }
    }
}

// Quotes
q:before,
q:after,
blockquote:before,
blockquote:after {
    content: "";
}

// Addresses
address {
    display: block;
    margin-bottom: $baseLineHeight;
    font-style: normal;
    line-height: $baseLineHeight;
}
